using System;
using DevExpress.Xpo;
namespace Component
{

    public class Category : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        string fName;
        public string Name
        {
            get { return fName; }
            set { SetPropertyValue<string>("Name", ref fName, value); }
        }
        string fNameEL;
        public string NameEL
        {
            get { return fNameEL; }
            set { SetPropertyValue<string>("NameEL", ref fNameEL, value); }
        }
        int fPriority;
        public int Priority
        {
            get { return fPriority; }
            set { SetPropertyValue<int>("Priority", ref fPriority, value); }
        }
        string fUrlAdmin;
        [Size(500)]
        public string UrlAdmin
        {
            get { return fUrlAdmin; }
            set { SetPropertyValue<string>("UrlAdmin", ref fUrlAdmin, value); }
        }
        string fUrlFronent;
        [Size(500)]
        public string UrlFronent
        {
            get { return fUrlFronent; }
            set { SetPropertyValue<string>("UrlFronent", ref fUrlFronent, value); }
        }
        bool fActive;
        public bool Active
        {
            get { return fActive; }
            set { SetPropertyValue<bool>("Active", ref fActive, value); }
        }
        bool fCoSoSX;
        public bool CoSoSX
        {
            get { return fCoSoSX; }
            set { SetPropertyValue<bool>("CoSoSX", ref fCoSoSX, value); }
        }
        public Category(Session session) : base(session) { }
        public Category() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class Introduction : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        string fContentVN;
        [Size(1073741823)]
        public string ContentVN
        {
            get { return fContentVN; }
            set { SetPropertyValue<string>("ContentVN", ref fContentVN, value); }
        }
        string fContentEL;
        [Size(1073741823)]
        public string ContentEL
        {
            get { return fContentEL; }
            set { SetPropertyValue<string>("ContentEL", ref fContentEL, value); }
        }
        public Introduction(Session session) : base(session) { }
        public Introduction() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class IntroductionImg : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        Introduction fIntro;
        public Introduction Intro
        {
            get { return fIntro; }
            set { SetPropertyValue<Introduction>("Intro", ref fIntro, value); }
        }
        int fPriority;
        public int Priority
        {
            get { return fPriority; }
            set { SetPropertyValue<int>("Priority", ref fPriority, value); }
        }
        string fPath;
        [Size(1000)]
        public string Path
        {
            get { return fPath; }
            set { SetPropertyValue<string>("Path", ref fPath, value); }
        }
        public IntroductionImg(Session session) : base(session) { }
        public IntroductionImg() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class Cart : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        DateTime fCreatDate;
        public DateTime CreatDate
        {
            get { return fCreatDate; }
            set { SetPropertyValue<DateTime>("CreatDate", ref fCreatDate, value); }
        }
        public Cart(Session session) : base(session) { }
        public Cart() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class Product : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        CategorySub fSubCat;
        public CategorySub SubCat
        {
            get { return fSubCat; }
            set { SetPropertyValue<CategorySub>("SubCat", ref fSubCat, value); }
        }
        string fName;
        [Size(150)]
        public string Name
        {
            get { return fName; }
            set { SetPropertyValue<string>("Name", ref fName, value); }
        }
        string fNameEL;
        [Size(150)]
        public string NameEL
        {
            get { return fNameEL; }
            set { SetPropertyValue<string>("NameEL", ref fNameEL, value); }
        }
        string fDescription;
        [Size(1000)]
        public string Description
        {
            get { return fDescription; }
            set { SetPropertyValue<string>("Description", ref fDescription, value); }
        }
        string fDescriptionEL;
        [Size(1000)]
        public string DescriptionEL
        {
            get { return fDescriptionEL; }
            set { SetPropertyValue<string>("DescriptionEL", ref fDescriptionEL, value); }
        }
        string fWeight;
        [Size(50)]
        public string Weight
        {
            get { return fWeight; }
            set { SetPropertyValue<string>("Weight", ref fWeight, value); }
        }
        DateTime fDateCreate;
        public DateTime DateCreate
        {
            get { return fDateCreate; }
            set { SetPropertyValue<DateTime>("DateCreate", ref fDateCreate, value); }
        }
        double fVND;
        public double VND
        {
            get { return fVND; }
            set { SetPropertyValue<double>("VND", ref fVND, value); }
        }
        double fUSD;
        public double USD
        {
            get { return fUSD; }
            set { SetPropertyValue<double>("USD", ref fUSD, value); }
        }
        bool fSpecial;
        public bool Special
        {
            get { return fSpecial; }
            set { SetPropertyValue<bool>("Special", ref fSpecial, value); }
        }
        bool fNew;
        public bool New
        {
            get { return fNew; }
            set { SetPropertyValue<bool>("New", ref fNew, value); }
        }
        string fImg;
        [Size(1000)]
        public string Img
        {
            get { return fImg; }
            set { SetPropertyValue<string>("Img", ref fImg, value); }
        }
        bool fBestSeller;
        public bool BestSeller
        {
            get { return fBestSeller; }
            set { SetPropertyValue<bool>("BestSeller", ref fBestSeller, value); }
        }
        string fUrlDetailBackend;
        [Size(1000)]
        public string UrlDetailBackend
        {
            get { return fUrlDetailBackend; }
            set { SetPropertyValue<string>("UrlDetailBackend", ref fUrlDetailBackend, value); }
        }
        string fUrlDetailFronent;
        [Size(1000)]
        public string UrlDetailFronent
        {
            get { return fUrlDetailFronent; }
            set { SetPropertyValue<string>("UrlDetailFronent", ref fUrlDetailFronent, value); }
        }
        string fUrlListImg;
        [Size(1000)]
        public string UrlListImg
        {
            get { return fUrlListImg; }
            set { SetPropertyValue<string>("UrlListImg", ref fUrlListImg, value); }
        }
        bool fActive;
        public bool Active
        {
            get { return fActive; }
            set { SetPropertyValue<bool>("Active", ref fActive, value); }
        }
        public Product(Session session) : base(session) { }
        public Product() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class Gallery : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        string fPath;
        [Size(1000)]
        public string Path
        {
            get { return fPath; }
            set { SetPropertyValue<string>("Path", ref fPath, value); }
        }
        int fPriority;
        public int Priority
        {
            get { return fPriority; }
            set { SetPropertyValue<int>("Priority", ref fPriority, value); }
        }
        public Gallery(Session session) : base(session) { }
        public Gallery() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class TiGiaUSDVND : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        int fUSD;
        public int USD
        {
            get { return fUSD; }
            set { SetPropertyValue<int>("USD", ref fUSD, value); }
        }
        double fVND;
        public double VND
        {
            get { return fVND; }
            set { SetPropertyValue<double>("VND", ref fVND, value); }
        }
        public TiGiaUSDVND(Session session) : base(session) { }
        public TiGiaUSDVND() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class TextStatic : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        string fKeyWord;
        [Size(1000)]
        public string KeyWord
        {
            get { return fKeyWord; }
            set { SetPropertyValue<string>("KeyWord", ref fKeyWord, value); }
        }
        string fVN;
        [Size(1000)]
        public string VN
        {
            get { return fVN; }
            set { SetPropertyValue<string>("VN", ref fVN, value); }
        }
        string fEL;
        [Size(1000)]
        public string EL
        {
            get { return fEL; }
            set { SetPropertyValue<string>("EL", ref fEL, value); }
        }
        public TextStatic(Session session) : base(session) { }
        public TextStatic() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class ContentManagement : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        string fName;
        [Size(500)]
        public string Name
        {
            get { return fName; }
            set { SetPropertyValue<string>("Name", ref fName, value); }
        }
        int fPriority;
        public int Priority
        {
            get { return fPriority; }
            set { SetPropertyValue<int>("Priority", ref fPriority, value); }
        }
        string fNameEl;
        [Size(500)]
        public string NameEl
        {
            get { return fNameEl; }
            set { SetPropertyValue<string>("NameEl", ref fNameEl, value); }
        }
        string fUrl;
        [Size(500)]
        public string Url
        {
            get { return fUrl; }
            set { SetPropertyValue<string>("Url", ref fUrl, value); }
        }
        bool fActive;
        public bool Active
        {
            get { return fActive; }
            set { SetPropertyValue<bool>("Active", ref fActive, value); }
        }
        public ContentManagement(Session session) : base(session) { }
        public ContentManagement() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class ProductImg : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        Product fProduct;
        public Product Product
        {
            get { return fProduct; }
            set { SetPropertyValue<Product>("Product", ref fProduct, value); }
        }
        int fPriority;
        public int Priority
        {
            get { return fPriority; }
            set { SetPropertyValue<int>("Priority", ref fPriority, value); }
        }
        string fPathImgSmall;
        [Size(1000)]
        public string PathImgSmall
        {
            get { return fPathImgSmall; }
            set { SetPropertyValue<string>("PathImgSmall", ref fPathImgSmall, value); }
        }
        string fPathImgBig;
        [Size(1000)]
        public string PathImgBig
        {
            get { return fPathImgBig; }
            set { SetPropertyValue<string>("PathImgBig", ref fPathImgBig, value); }
        }
        public ProductImg(Session session) : base(session) { }
        public ProductImg() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class Cart_Product : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        Cart fCart;
        public Cart Cart
        {
            get { return fCart; }
            set { SetPropertyValue<Cart>("Cart", ref fCart, value); }
        }
        Product fProduct;
        public Product Product
        {
            get { return fProduct; }
            set { SetPropertyValue<Product>("Product", ref fProduct, value); }
        }
        int fQuantity;
        public int Quantity
        {
            get { return fQuantity; }
            set { SetPropertyValue<int>("Quantity", ref fQuantity, value); }
        }
        public Cart_Product(Session session) : base(session) { }
        public Cart_Product() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class News : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        string fTitile;
        [Size(500)]
        public string Titile
        {
            get { return fTitile; }
            set { SetPropertyValue<string>("Titile", ref fTitile, value); }
        }
        string fTitileEL;
        [Size(500)]
        public string TitileEL
        {
            get { return fTitileEL; }
            set { SetPropertyValue<string>("TitileEL", ref fTitileEL, value); }
        }
        string fSummary;
        [Size(1073741823)]
        public string Summary
        {
            get { return fSummary; }
            set { SetPropertyValue<string>("Summary", ref fSummary, value); }
        }
        string fSummaryEL;
        [Size(1073741823)]
        public string SummaryEL
        {
            get { return fSummaryEL; }
            set { SetPropertyValue<string>("SummaryEL", ref fSummaryEL, value); }
        }
        DateTime fDate;
        public DateTime Date
        {
            get { return fDate; }
            set { SetPropertyValue<DateTime>("Date", ref fDate, value); }
        }
        string fContent;
        [Size(1073741823)]
        public string Content
        {
            get { return fContent; }
            set { SetPropertyValue<string>("Content", ref fContent, value); }
        }
        string fContentEL;
        [Size(1073741823)]
        public string ContentEL
        {
            get { return fContentEL; }
            set { SetPropertyValue<string>("ContentEL", ref fContentEL, value); }
        }
        string fUrlDetailFronend;
        [Size(1000)]
        public string UrlDetailFronend
        {
            get { return fUrlDetailFronend; }
            set { SetPropertyValue<string>("UrlDetailFronend", ref fUrlDetailFronend, value); }
        }
        string fUrlDetailBackend;
        [Size(1000)]
        public string UrlDetailBackend
        {
            get { return fUrlDetailBackend; }
            set { SetPropertyValue<string>("UrlDetailBackend", ref fUrlDetailBackend, value); }
        }
        string fImg;
        [Size(500)]
        public string Img
        {
            get { return fImg; }
            set { SetPropertyValue<string>("Img", ref fImg, value); }
        }
        bool fNew;
        public bool New
        {
            get { return fNew; }
            set { SetPropertyValue<bool>("New", ref fNew, value); }
        }
        bool fService;
        public bool Service
        {
            get { return fService; }
            set { SetPropertyValue<bool>("Service", ref fService, value); }
        }
        bool fActive;
        public bool Active
        {
            get { return fActive; }
            set { SetPropertyValue<bool>("Active", ref fActive, value); }
        }
        public News(Session session) : base(session) { }
        public News() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class Users : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        string fName;
        [Size(50)]
        public string Name
        {
            get { return fName; }
            set { SetPropertyValue<string>("Name", ref fName, value); }
        }
        string fPhone;
        [Size(15)]
        public string Phone
        {
            get { return fPhone; }
            set { SetPropertyValue<string>("Phone", ref fPhone, value); }
        }
        string fMail;
        [Size(50)]
        public string Mail
        {
            get { return fMail; }
            set { SetPropertyValue<string>("Mail", ref fMail, value); }
        }
        string fUser_name;
        [Size(50)]
        public string User_name
        {
            get { return fUser_name; }
            set { SetPropertyValue<string>("User_name", ref fUser_name, value); }
        }
        string fPass;
        [Size(50)]
        public string Pass
        {
            get { return fPass; }
            set { SetPropertyValue<string>("Pass", ref fPass, value); }
        }
        DateTime fDatecreated;
        public DateTime Datecreated
        {
            get { return fDatecreated; }
            set { SetPropertyValue<DateTime>("Datecreated", ref fDatecreated, value); }
        }
        DateTime fDatelogin;
        public DateTime Datelogin
        {
            get { return fDatelogin; }
            set { SetPropertyValue<DateTime>("Datelogin", ref fDatelogin, value); }
        }
        bool fActive;
        public bool Active
        {
            get { return fActive; }
            set { SetPropertyValue<bool>("Active", ref fActive, value); }
        }
        public Users(Session session) : base(session) { }
        public Users() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class Contact : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        DateTime fDate;
        public DateTime Date
        {
            get { return fDate; }
            set { SetPropertyValue<DateTime>("Date", ref fDate, value); }
        }
        string fFullName;
        [Size(50)]
        public string FullName
        {
            get { return fFullName; }
            set { SetPropertyValue<string>("FullName", ref fFullName, value); }
        }
        string fContent;
        [Size(2000)]
        public string Content
        {
            get { return fContent; }
            set { SetPropertyValue<string>("Content", ref fContent, value); }
        }
        string fCountry;
        [Size(200)]
        public string Country
        {
            get { return fCountry; }
            set { SetPropertyValue<string>("Country", ref fCountry, value); }
        }
        string fProvince;
        [Size(500)]
        public string Province
        {
            get { return fProvince; }
            set { SetPropertyValue<string>("Province", ref fProvince, value); }
        }
        string fWard;
        [Size(500)]
        public string Ward
        {
            get { return fWard; }
            set { SetPropertyValue<string>("Ward", ref fWard, value); }
        }
        string fAddress;
        [Size(10)]
        public string Address
        {
            get { return fAddress; }
            set { SetPropertyValue<string>("Address", ref fAddress, value); }
        }
        string fMail;
        public string Mail
        {
            get { return fMail; }
            set { SetPropertyValue<string>("Mail", ref fMail, value); }
        }
        string fPhone;
        [Size(50)]
        public string Phone
        {
            get { return fPhone; }
            set { SetPropertyValue<string>("Phone", ref fPhone, value); }
        }
        string fCompanyName;
        [Size(200)]
        public string CompanyName
        {
            get { return fCompanyName; }
            set { SetPropertyValue<string>("CompanyName", ref fCompanyName, value); }
        }
        string fCartUrl;
        [Size(500)]
        public string CartUrl
        {
            get { return fCartUrl; }
            set { SetPropertyValue<string>("CartUrl", ref fCartUrl, value); }
        }
        int fCart;
        public int Cart
        {
            get { return fCart; }
            set { SetPropertyValue<int>("Cart", ref fCart, value); }
        }
        string fView;
        [Size(50)]
        public string View
        {
            get { return fView; }
            set { SetPropertyValue<string>("View", ref fView, value); }
        }
        string fSy;
        [Size(50)]
        public string Sy
        {
            get { return fSy; }
            set { SetPropertyValue<string>("Sy", ref fSy, value); }
        }
        public Contact(Session session) : base(session) { }
        public Contact() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class Ward : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        string fName;
        [Size(200)]
        public string Name
        {
            get { return fName; }
            set { SetPropertyValue<string>("Name", ref fName, value); }
        }
        string fCode1;
        [Size(200)]
        public string Code1
        {
            get { return fCode1; }
            set { SetPropertyValue<string>("Code1", ref fCode1, value); }
        }
        string fCode2;
        [Size(50)]
        public string Code2
        {
            get { return fCode2; }
            set { SetPropertyValue<string>("Code2", ref fCode2, value); }
        }
        public Ward(Session session) : base(session) { }
        public Ward() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class CategorySub : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        Category fCategory;
        public Category Category
        {
            get { return fCategory; }
            set { SetPropertyValue<Category>("Category", ref fCategory, value); }
        }
        string fName;
        [Size(500)]
        public string Name
        {
            get { return fName; }
            set { SetPropertyValue<string>("Name", ref fName, value); }
        }
        string fNameEL;
        [Size(500)]
        public string NameEL
        {
            get { return fNameEL; }
            set { SetPropertyValue<string>("NameEL", ref fNameEL, value); }
        }
        string fUrlAdmin;
        [Size(500)]
        public string UrlAdmin
        {
            get { return fUrlAdmin; }
            set { SetPropertyValue<string>("UrlAdmin", ref fUrlAdmin, value); }
        }
        string fUrlFrontend;
        [Size(500)]
        public string UrlFrontend
        {
            get { return fUrlFrontend; }
            set { SetPropertyValue<string>("UrlFrontend", ref fUrlFrontend, value); }
        }
        int fPriority;
        public int Priority
        {
            get { return fPriority; }
            set { SetPropertyValue<int>("Priority", ref fPriority, value); }
        }
        bool fActive;
        public bool Active
        {
            get { return fActive; }
            set { SetPropertyValue<bool>("Active", ref fActive, value); }
        }
        public CategorySub(Session session) : base(session) { }
        public CategorySub() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

    public class Province : XPLiteObject
    {
        int fId;
        [Key(true)]
        public int Id
        {
            get { return fId; }
            set { SetPropertyValue<int>("Id", ref fId, value); }
        }
        string fCode;
        [Size(200)]
        public string Code
        {
            get { return fCode; }
            set { SetPropertyValue<string>("Code", ref fCode, value); }
        }
        string fName;
        [Size(500)]
        public string Name
        {
            get { return fName; }
            set { SetPropertyValue<string>("Name", ref fName, value); }
        }
        public Province(Session session) : base(session) { }
        public Province() : base(Session.DefaultSession) { }
        public override void AfterConstruction() { base.AfterConstruction(); }
    }

}
